第2节 无人驾驶数据采集、训练与测试


搭建起车道,然后运行相应的收集数据的程序,按下键盘方向键控制小车行驶,每按一次方向键,程序就会记录下一帧相应的图像。让小车平均遍历自动驾驶中可能出现的各种情况,按‘q‘退出数据采集,然后再运行相应的模型训练程序训练自动驾驶神经网络。最后使用训练好的神经网络模型在跑道上进行测试。

原理图

摄像头->大白\n树莓派: CSI/USB
大白\n树莓派-->客户端: WiFi
Note right of 大白\n树莓派: HTTP协议传送摄像头数据\n神经网络收集和训练数据

硬件准备

硬件清单

  • 胶带

硬件搭建-跑道

  • 地面颜色为纯色,与所用纸张的颜色对比度应较大
  • 跑道的宽度稍大于车的宽度
  • 可以把拐弯处的弯度设计得稍大一些

c5p2

采集驾驶数据

1.打开终端,执行以下命令

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd computer
python3 collect_training_data.py

2.新建一个终端窗口

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd raspberryPi
python3 stream_client.py

3.开始采集

  • 顺利执行后会出现两个窗口,上面的是摄像头的画面,下面的是操作区。 将鼠标焦点移到箭头所指的工作区上。

  • 把小车放置在跑道上,点击键盘上下左右光标控制小车。

  • 通过键盘控制,让小车在跑道上正确的绕行数圈(3圈左右即可)

  • 训练结束后,确定焦点仍在工作区上,点击键盘q退出训练,程序会自动保存驾驶数据

微信截图_20191213185113

训练驾驶数据

1.新建一个终端窗口

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd computer
python3 model_training.py

微信截图_20190822150220

2.得到模型

模型文件在~/Desktop/learn-ai/chapter5/SelfDrivingCar/computer/saved_model/nn_model.xml

开始无人驾驶

根据训练好的神经网络模型,现在我们可以实现自动驾驶

1.打开终端

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd computer
python3 rc_drive_nn_only.py

2.新建一个终端窗口

cd ~/Desktop/learn-ai/codes/chapter5/SelfDrivingCar
cd raspberryPi
python3 stream_client.py
© 北京师范大学智慧学习研究院 all right reserved,powered by Gitbook修订时间: 2020-10-28

results matching ""

    No results matching ""

    results matching ""

      No results matching ""